package icasue.stronger.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @Author: Qiao Hang
 * @CreateDate: 2020/7/14 下午3:42
 * @UpdateDate:
 * @Description: Supplier @RuntimeReference to using in StrongerAdvice plugins,
 * function likely Java's @Resource or Spring's @Autowired, resolve runtime's
 * component's reference!
 */
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface RuntimeReference {
    //same to Java's @Resource,when interface exist multi implements,
    //by this type, wu can reference the correct instance we expected.
    String name() default "";
}
